1. Field of the Invention
The present invention relates to three-dimensional scanning, and specifically to systems, program product, and methods to perform three-dimensional model registration.
2. Description of Related Art
In recent years, the use of various structures such as, for example, advanced composite structures have experienced tremendous growth in the aerospace, automotive, and many other commercial industries. While composite materials offer significant improvements in performance, they require strict quality control procedures in the manufacturing processes. Specifically, non-destructive evaluation (“NDE”) methods are required to assess the structural integrity of the various structures, for example, to detect inclusions, delaminations and porosities. Conventional NDE methods, however, have traditionally been labor-intensive, and costly. As a result, testing procedures have adversely increased the manufacturing costs associated with composite structures.
Various systems and techniques have been proposed to assess the structural integrity of composite structures. Ultrasound testing, for example, has emerged as an extremely useful method of providing non-invasive, generally non-destructive, techniques used to measure various features of materials to include layer thickness, cracks, delamination, voids, disbonds, foreign inclusions, fiber fractions, fiber orientation and porosity. Such features influence a given material's qualities and performance in given applications. Each application of a structure places unique demands on the materials' structural qualities, including the need for differing strength, flexibility, thermal properties, cost, or ultraviolet radiation resistance. With the changing demands, more non-invasive, non-destructive testing of materials is being performed using techniques such as ultrasound testing. Ultrasound testing includes transducer-induced, laser, electromagnetic-induced and plasma-initiated ultrasound. Transducer-induced ultrasound techniques use piezoelectric transducers to induce an ultrasonic signal in an object.
Ultrasound techniques are applied in research as well as industrial settings. In research, ultrasound techniques are used to test new materials for desired features. The techniques are also used to seek defects in material that has undergone stress or environmental endurance testing. In industry, the techniques are used during scheduled servicing to inspect parts for defects. Aircraft, automobile, and other commercial industries have shown increasing interest in these techniques.
Wide area imaging devices also offer many speed and flexibility advantages to NDE applications. Such imaging devices can be reconfigured quickly to accommodate a variety of part geometries and sizes and can be deployed without precise fixturing for the sensor or the part. When the part to be inspected is large or complicated (with many bends), applications use several sensors or move a single sensor to multiple viewpoints to complete an inspection. An operator must then review several images for a single part, spatially relate indications across disparate images, and assume the collection of images completely covers the part.
Various non-destructive evaluation systems can use laser-ultrasound as a wide area, imaging device. Such systems can also use, for example, a three-dimensional scanner such as a structured light range camera to locate the part within a work cell. The three-dimensional scanner, for example, can create a point cloud of geometric samples (“point data”) on the surface of the part. Such point data can represent the pose of a part in a given environment (“sensor data”). The point data is, however, usually not directly utilized. Camera calibration, photogrammetry, triangulation, and registration techniques are used to define coordinate frames that allow the system to relate the three-dimensional data from the laser-ultrasound imaging device to a computer-aided design (“CAD”) model of the part. The system can then map the ultrasound data from various viewpoints onto the CAD model, creating a natural three-dimensional coordinate frame for the operator to relate indications and evaluate scan coverage.
Recognized by the Applicants, however, is that registration of three-dimensional models to point data representing the pose of a part is complicated by a combination of two fundamental characteristics of the sensor data. The first is the presence of outliers which are acquired as part of the sensor data, but that do not represent points on the model. These points can arise from noise in the sensor, or from other objects in the scene such as occluding surfaces, walls, tabletops, and etc. The second is the absence of data for sections of the model arising, perhaps, from places where the part was occluded or that were out of range of the sensor. Previous implementations circumvent this problem by prefiltering the data to remove outliers and/or by menu selection of the areas of the model and sensor data to use. Such techniques, however, reduce efficiency and increase the amount of time necessary to perform the registration, if registration is even possible.
An algorithm currently used to attempt to align such models includes the “Iterative Closest Point” algorithm. This algorithm works by selecting points in a source, calculating the closest point in the target to each of these points, and then calculating the transform which minimizes the distance between each point and its correspondence, and then applying this transform to the source moving it closer to the target. This process is repeated (iterated) until such time as the source and target are sufficiently close, a fixed number of iterations have been performed, or the registration has failed. Besl et al., “Method for Registration of 3-D Shapes,” IEEE Transactions on Pattern Analysis and Machine Intelligence 14, pages 239-256 (1992), incorporated by reference in its entirety, provides additional details regarding conventional application of the algorithm. This algorithm works generally well when the source and target are initially close and when all of the points in the source have a corresponding point in the target. If, however, points exist in the source that are “far” from any true correspondence in the target, the minimization of the transform based on the chosen “false” correspondence can inhibit actual registration. In particular, when sensor data containing outliers is chosen to be the source, the outliers do not have true correspondences with the model and the registration fails. Similarly, when the sensor data does not completely cover the model, using the model as the source fails.
Accordingly, recognized by Applicants is the need for a system, program product, and methods to perform automated three-dimensional model registration, which allows both noisy and incomplete sensor data to be automatically registered without manual designation of the areas of correspondence and without ad hoc filtering of the data sources.